Microcontroller-Based Hardware Design